package OneArray;

import java.util.Random;

/*
        元素打乱:
            1.数据交换
            2.生成一个随机数索引
* */
public class ArrayDemo02 {
    public static void main(String[] args) {
        // 定义数组
        int[] arr ={1, 2, 3, 4, 5, };
        // 创建随机数对象
        Random r = new Random();
        for (int i = 0; i < arr.length; i++) {
            // 生成随机索引
            int index = r.nextInt(arr.length);
            // 将"当前元素"和"随机索引指向的元素"进行交换
            int temp = arr[i];
            arr[i] = arr[index];
            arr[index] = temp;
        }
        // 遍历数组，查看打乱后的元素
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }

//        method1();
//        method2();


    }

    public static void method1() {
        // 数据交换
        int a = 10;
        int b = 20;
        // 借助第三方临时变量，完成交换
        int temp = a;
        a = b;
        b = temp;
        // 打印结果
        System.out.println(a);
        System.out.println(b);
    }

    public static void method2() {
        // 生成一个随机数索引
        int [] arr={1, 2, 3, 4, 5};
        // 创建随机数对象
        Random r = new Random();
        // 生成随机索引
        for (int i = 0; i < arr.length; i++) {
//            int index = r.nextInt(arr.length);
//            System.out.println(index);
            System.out.println(r.nextInt(arr.length));

        }

    }
}
